if (!jsx3.lang.Class.forName("ux.cdb.admin.work.WorkPage")) {

jsx3.Class.defineClass(
		"ux.cdb.admin.work.WorkPage",
		jsx3.gui.Block,
		null,
		function (objRoot) {

            var matrixLists = {
              loaded : 0,
              URLs   : [
                  { url: "role1/working/StudentMatrix.xml", tab: "tabWork"   },
                  { url: "role1/working/ApplyMatrix1.xml" , tab: "tabWork"   },
                  { url: "role1/working/ApplyMatrix2.xml" , tab: "tabWork"   },
                  { url: "role1/done/StudentMatrix.xml"   , tab: "tabFinish" },
                  { url: "role1/done/ApplyMatrix1.xml"    , tab: "tabFinish" },
                  { url: "role1/done/ApplyMatrix2.xml"    , tab: "tabFinish" }
              ]
            };

			/**
			 * This function will be called after deserialize
			 */
			objRoot.prototype.onAfterDeserialize = function() {
                this.loadMatrixUIs();
			};

			/**
			 * called when destroy event fired
			 */
			objRoot.prototype.onDestroy = function() {
			};

            objRoot.prototype.getMatrixList = function() {

            };
            
            objRoot.prototype.loadMatrixUIs = function() {
                var f = function() {};
                //load tab content
                this.get('tabWork').getContentPane().setPadding("10 30 10 10");
                this.get('tabFinish').getContentPane().setPadding("10 30 10 10");
                this.loadNextMatrixUI();
            };

            objRoot.prototype.loadNextMatrixUI = function() {
                if(matrixLists.URLs[matrixLists.loaded]) {
                    var url = "ux/cdb/admin/work/ui/" + matrixLists.URLs[matrixLists.loaded].url;
                    jsx3.log("loading .... " + url);
                    ux.megatron.Main.loadUIResourceAsync(
                        this.get(matrixLists.URLs[matrixLists.loaded].tab).getContentPane(), 
                        "ux.cdb.admin", url, this, this.loadNextMatrixUI);
                    matrixLists.loaded = matrixLists.loaded + 1;
                } else {
                    matrixLists.loaded = 0;
                }
            };
            
		});
}